home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / wildcat / w3euti25.zip / UTI.DOC < prev    next >
Text File  |  1993-02-10  |  29KB  |  805 lines

  1. ┌───────────────────────────────────────────────┐
  2. │ WC3 Enhanced UTIs      v2.5         02-10-93  │
  3. └───────────────────────────────────────────────┘
  4.  
  5.  
  6. What They Do
  7. ------------
  8.  
  9. UTIs (Universal Text Interface) are a group of programs that allow
  10. the PC Relay and MegaMail door programs to interface with a BBS. 
  11. There are many different UTI programs available and each works with
  12. a specific BBS program.
  13.  
  14. UTI programs directly access the BBS database files and perform
  15. functions such as message imports and exports, listing available
  16. conferences and updating last-read pointers.  Thanks to the UTI
  17. standard interface, PC Relay can be used with many different BBS
  18. programs.
  19.  
  20. These UTIs are designed for use with WildCat versions 3.0x to 3.5x. 
  21. They will automatically detect which version you are using and
  22. build the message databases accordingly.
  23.  
  24.  
  25. Features
  26. --------
  27.  
  28. 1.   The UTI programs will work properly in a multi-node
  29.      environment.  These two features have been added to achieve
  30.      multi-node compatibility:
  31.  
  32.      A.   All imported messages are marked internally with a UTI
  33.           code.  This code identifies the message as coming from
  34.           the UTIs.  In multi-network situations, the code also
  35.           identifies which network the message came from.  Imported
  36.           messages will not be exported to the same network.
  37.  
  38.      B.   The UTIs keep their own high message numbers.  If a
  39.           message is entered online and the PC Relay software
  40.           misses it, the UTIs will detect it and adjust the next
  41.           export accordingly.  PC Relay and communication errors
  42.           are taken into account and will not confuse the UTI's
  43.           high message count.
  44.  
  45. 2.   Imported text files "<<*.IMP" are exported along with outgoing
  46.      messages just like regular text.  Each time an *.IMP file is
  47.      exported, a message will be logged to the UTI.LOG file.
  48.  
  49. 3.   Input and output files are processed as binary files instead
  50.      of text files.  Text files are limited in that an End-of-File
  51.      mark (ASCII 26) within a message would cause an import to end
  52.      prematurely, sometimes causing errors and often losing
  53.      messages.  When an end-of-file mark is detected in the middle
  54.      of a packet, a message will be logged to the UTI.LOG file.
  55.  
  56. 4.   Extra spaces at the end of a line are skipped during imports
  57.      and exports.  The blank lines surrounding the PC Relay
  58.      taglines often have 30-40 extraneous spaces.  By eliminating
  59.      these wasted characters, your MSGxxx.DAT files will be
  60.      approximately 5% smaller.
  61.  
  62. 5.   Using a combination of file buffers, smart file locking and
  63.      batch processing, the Enhanced WC3 UTIs are approximately 11-
  64.      200% faster than earlier WildCat UTIs.
  65.  
  66. Other Information
  67. -----------------
  68.  
  69. 1.   "Soft errors" such as corrupted messages and unexpected data
  70.      will be logged to an error file and the message will be
  71.      skipped.  Import or export will continue with the next good
  72.      message, if any.
  73.  
  74. 2.   "Hard errors" such as missing files, full disks and too many
  75.      open files will be logged to an error file and cause the UTI
  76.      to stop.  An error code will be passed to the calling program
  77.      (PC Relay, MegaMail) which normally causes the calling program
  78.      to stop.
  79.  
  80. 3.   The mail waiting flag is set in both real name and alias
  81.      conferences.
  82.  
  83. 4.   Messages are limited to 150 lines of up to 79 characters per
  84.      line.  Lower limits may be defined using the MAKEWILD program;
  85.      If a message exceeds the conference's line limit it will be
  86.      split into two or more parts.
  87.  
  88.      Excessive taglines sometimes make a message exceed its line
  89.      limit.  To avoid unnecessary message splitting, a conference's
  90.      line limit may be exceeded by up to 10 lines if there is ample
  91.      space in the message record.  These additional lines are
  92.      supported by WildCat and will not cause any problems.
  93.  
  94. 5.   During an import, the UTIs will abide by the conference's
  95.      maximum message limit.  If the number of messages exceeds that
  96.      limit, the UTIs will delete excessive messages starting with
  97.      the lowest message number until the message limit is reached. 
  98.      Messages marked with the "No Delete" flag will not be deleted.
  99.  
  100. 6.   Pressing CTRL-C will signal the UTIs to stop processing at the
  101.      next safe opportunity.  The UTIs will stop with an errorlevel,
  102.      signalling to the calling program that it stopped abnormally.
  103.  
  104.  
  105. Setup
  106. -----
  107.  
  108. Install the parent program (PC Relay or the MegaMail Door)
  109. according to that program's instructions.  The UTI programs can be
  110. placed with the PC Relay program files, or in any directory that is
  111. listed in the path.
  112.  
  113.  
  114. DOS Environment Variables
  115. -------------------------
  116.  
  117. The UTIs can use three optional environment variables.  DOS
  118. environment variables are defined using the SET command.
  119.  
  120. WCHOME :  This variable is optional and contains the path to the
  121.           main WildCat directory.  An example is:
  122.  
  123.                SET WCHOME=C:\WC30
  124.  
  125.           If this variable is not defined, the UTIs will search the
  126.           path until the main WildCat directory is found.  If you
  127.           use the WCHOME environment variable, the UTIs will take
  128.           less time since they won't have to search for the WildCat
  129.           directory.
  130.  
  131. WCNODEID: If you are running a multi-node BBS and do not have the
  132.           MAKEWILD autonode option enabled, this variable must be
  133.           set to a unique number between 1 and 250.  See the
  134.           section on multi-node BBSs for more information.
  135.  
  136. UTINET :  With the advent of PC Relay 4.11, the UTINET variable
  137.           will no longer function as it was designed.  PCR 4.11
  138.           will not export messages with a PCR tagline, even if a
  139.           conference needs to be sent to two or more networks. 
  140.           This feature is being retained for future use.
  141.  
  142.           This variable is only important if you cross two networks
  143.           together.  If two or more PC Relay networks access the
  144.           same message conference, you need to set this variable to
  145.           a unique character for each conference.  For example:
  146.  
  147.           SET UTINET=A
  148.           SET UTINET=B
  149.  
  150.           Only one character is required, and only the first
  151.           character will be used if there is more than one.
  152.  
  153. MAXLINES: This environment variable will override the maximum message
  154.           line setting in MakeWild.  This variable affects all
  155.           conferences and works on import only (of course).  Example:
  156.  
  157.           SET MAXLINES=100
  158.  
  159.           Let's say a particular conference only allows 40 lines.
  160.           You set MakeWild to 40 lines so your callers can't leave
  161.           longer messages, but you don't want network messages split
  162.           on import.  Using this variable gives you flexibility.
  163.           (Optional)
  164.  
  165. UTILOG :  UTILOG environment variable added for trouble-shooting.
  166.           If the UTILOG environment variable is set to "Yes" (or
  167.           "on" or "full" or just about anything), then extra
  168.            information will be logged to the UTI.LOG file each time
  169.            UTIIMPRT & UTIEXPRT are run.  Example:
  170.  
  171.            SET UTILOG=YES
  172.  
  173.            To turn full logging off, type:
  174.  
  175.            SET UTILOG=
  176.  
  177.  
  178. Multi-Node BBSs
  179. ---------------
  180.  
  181. If you are running a single-line version of WildCat, the UTIs
  182. cannot be run while the BBS is up, or when any other utility is
  183. accessing the message databases.
  184.  
  185. In order to use the UTIs while the BBS is online, you must be
  186. running a multi-line WildCat version and have either DOS share or
  187. Novell defined in the Makewild program.  If the MAKEWILD autonode
  188. option is enabled, the UTIs will determine the proper node ID to
  189. use.  If you are not using the autonode feature, the environment
  190. variable WCNODEID must be set to a valid number between 1 and 250.
  191.  
  192. Use the following command:
  193.      SET WCNODEID=3
  194.  
  195. using 3 or whichever node ID you wish to use.  This node ID must
  196. not be duplicated.  No other BBS node or program using this node ID
  197. may be running while the UTIs are accessing the message databases.
  198.  
  199.  
  200. Renumbering the Databases
  201. -------------------------
  202.  
  203. You must be careful when renumbering the databases.  Before you
  204. renumber, make sure that all messages have been exported.  The best
  205. method is to:
  206.  
  207.      1.  Take all BBS nodes down.
  208.      2.  Run the PC Relay export program.
  209.  
  210.      You may renumber your conferences now, or wait until you
  211.      import new messages.
  212.  
  213. Since the UTIs keep their own high message numbers, you must run
  214. the UTIRESET program in addition to the PC Relay RESET program. 
  215. The UTIRESET program must be run in the directory where you run
  216. your imports and exports.
  217.  
  218. If you use the UTINET environment variable, UTIRESET must be run
  219. for each UTINET network.
  220.  
  221.  
  222. Errors
  223. ------
  224.  
  225. Things to keep in mind when tracking down PostLink & UTI erros:
  226.  
  227. 1)    There are three different log files that you need to check.
  228.       PostLink uses POSTLINK.LOG and ERROR.LOG while the UTIs use
  229.       UTI.LOG.
  230.  
  231. 2)    PostLink does not report the entire error code to either the
  232.       screen of the log files.  For the correct UTI error code,
  233.       always check the UTI.LOG file.
  234.  
  235. Here are a list of the UTI error codes:
  236.  
  237.       DOS Runtime Error Codes:
  238.  
  239.         1 = Invalid function number.
  240.         2 = File not found.
  241.         3 = Path not found.
  242.         4 = Too many open files.
  243.         5 = File access denied.
  244.         6 = Invalid file handles.
  245.        12 = Invalid file access code.
  246.        15 = Invalid drive number.
  247.        16 = Cannot remove the current directory.
  248.        17 = Cannot rename across drives.
  249.  
  250.       DOS I/O Errors:
  251.  
  252.       100 = Disk read error.
  253.       101 = Disk write error.
  254.       102 = File not assigned.
  255.       103 = File not open.
  256.       104 = File not open for input.
  257.       105 = File not open for output.
  258.       106 = Invalid numeric format.
  259.  
  260.       DOS Critical Errors:
  261.  
  262.       150 = Disk is write protected.
  263.       151 = Unknown unit.
  264.       152 = Drive not ready.
  265.       153 = Unknown command.
  266.       154 = CRC error in data.
  267.       155 = Bad drive request structure length.
  268.       156 = Disk seek error.
  269.       157 = Unknown media type.
  270.       158 = Sector not found.
  271.       159 = Printer out of paper.
  272.       160 = Device write fault.
  273.       161 = Device read fault.
  274.       162 = Hardware failure.
  275.  
  276.       DOS Fatal Errors:
  277.  
  278.       200 = Division by zero.
  279.       201 = Range check error.
  280.       202 = Stack overflow error.
  281.       203 = Heap overflow error.
  282.       204 = Invalid pointer operation.
  283.       205 = Floating point overflow.
  284.       206 = Floating point underflow.
  285.       207 = Invalid floating point operation.
  286.       208 = Overlay manager not installed
  287.       209 = Overlay file read error.
  288.       210 = Object not initialized.
  289.       211 = Call to abstract method.
  290.       212 = Stream registration error.
  291.       213 = Collection index out of range.
  292.       214 = Collection overflow error.
  293.       215 = Arithmatic overflow error.
  294.  
  295.  
  296.       Special UTI Error Code:
  297.  
  298.       255 = Indicates one of the following:
  299.             - Control-C was pressed during operation.
  300.             - Invalid or incorrect number of parameters.
  301.  
  302.  
  303.       BTree Isam Error Message List:
  304.  
  305.        9500..
  306.        9899  =  DOS I/O Error.  Subtract 9500 from the error number to
  307.                 find the actual DOS I/O error code.
  308.  
  309.        9900  =  Invalid path name.
  310.  
  311.        9901  =  Too many open files.
  312.  
  313.        9902  =  Current directory is full.
  314.  
  315.        9903  =  File not found.
  316.  
  317.        9904  =  Invalid file handle.
  318.  
  319.        9905  =  Read request exceeds 64K bytes.
  320.  
  321.        9906  =  Write request exceeds 64K bytes.
  322.  
  323.        9908  =  Invalid access mode.
  324.  
  325.       10000  =  Insufficient memory to initialize the BTree routines.
  326.  
  327.       10001..
  328.       10009  =  Serious I/O error occurred while in save mode.  The fileblock
  329.                 is still in a usable state but the last operation was not
  330.                 completed.
  331.  
  332.       10010  =  Index file is probably corrupt, ie: it was not closed properly
  333.                 after the last modification.  Can be corrected by a rebuild.
  334.  
  335.       10020  =  Record length less than 22 or more than 2147483647 bytes.
  336.  
  337.       10030,
  338.       10040  =  Insufficient memory for Fileblock descriptors.
  339.  
  340.       10050  =  Invalid number of keys specified.
  341.  
  342.       10055  =  Key length is too long.
  343.  
  344.       10060  =  Too many keys, or file read error.
  345.  
  346.       10070  =  File read error:
  347.                 - Dialog file may be corrupted from a previous program run
  348.                   (deleting the dialog file may help).  
  349.                 - Tried to read beyond the end of the file.
  350.                 - Physical hard disk error.
  351.  
  352.       10075  =  File write error.
  353.  
  354.       10080  =  Fileblock not open.
  355.  
  356.       10090,
  357.       10100  =  Insufficient memory to allocate Fileblock.
  358.  
  359.       10110  =  Drive not ready.
  360.  
  361.       10120  =  «PageSize» incompatible with Fileblock.
  362.  
  363.       10121  =  «MaxKeyLen» too small.
  364.  
  365.       10125  =  Passed key is too long.
  366.  
  367.       10130,
  368.       10135  =  Record 0 must not be accessed.
  369.  
  370.       10140  =  Access not possible, undefined error.
  371.  
  372.       10150  =  Out of file handles when trying to flush network fileblocks.
  373.  
  374.       10160  =  Fileblock not correctly closed.
  375.  
  376.       10164  =  Invalid key number.
  377.  
  378.       10170  =  Fileblock free record list is corrupt. (Rebuild)
  379.  
  380.       10180  =  Attempt to repair Fileblock failed.
  381.  
  382.       10190  =  Extend handle function requires DOS 3.3 or later.
  383.  
  384.       10191  =  Insufficient memory for new file handle table.
  385.       10192  =  Unable to initialize new file handle table.
  386.  
  387.       10200  =  No matching key found.
  388.  
  389.       10205  =  Data record is currently locked.
  390.  
  391.       10210  =  No key found and no larger keys available.
  392.  
  393.       10220  =  Key to delete was not found.
  394.  
  395.       10230  =  Cannot add duplicate key.
  396.  
  397.       10240  =  No larger key found.
  398.  
  399.       10245  =  No smaller key found.
  400.  
  401.       10250  =  No larger key found.
  402.  
  403.       10255  =  Sequential access not allowed.
  404.  
  405.       10260  =  No smaller key found.
  406.  
  407.       10265  =  Sequential access not allowed.
  408.  
  409.       10270  =  No matching key and record number found.
  410.  
  411.       10280,
  412.       10285  =  Index empty.
  413.  
  414.       10303  =  Out of workstation numbers.
  415.  
  416.       10305  =  Unable to access workstation log file.
  417.  
  418.       10310  =  Network initialization error.
  419.  
  420.       10315  =  Network exit error.
  421.  
  422.       10322,
  423.       10323  =  Close of fileblock not possible because of a non
  424.                 removeable lock.
  425.  
  426.       10330  =  Fileblock lock attempt failed.
  427.  
  428.       10332  =  Fileblock readlock attempt failed.
  429.  
  430.       10335  =  Record lock attempt failed.
  431.  
  432.       10337  =  Insufficient memory for lock list.
  433.  
  434.       10340..
  435.       10342  =  Fileblock unlock attempt failed.
  436.  
  437.       10345  =  Record unlock attempt failed.
  438.  
  439.       10355  =  A lock prevents the operation.
  440.  
  441.       10356  =  Insufficient memory to allocate Fileblock.
  442.  
  443.       10397  =  A lock prevents the operation.
  444.  
  445.       10398  =  Fileblock must be locked for the operation.
  446.  
  447.       10399  =  A lock prevents the operation.
  448.  
  449.       10410  =  Data file not found.
  450.  
  451.       10411  =  Insufficient heap space for work buffers.
  452.  
  453.       10412  =  Record section length exceeds 64K.
  454.  
  455.       10415  =  Too many segments in a variable record.
  456.  
  457.       10420,
  458.       10425  =  Relative position or scale invalid.
  459.  
  460.       10430  =  Fileblock repair in read only mode not allowed.
  461.  
  462.       10435  =  Index tree page greater than 16k.
  463.  
  464.       10440  =  Cannot create dialog file in read only mode.
  465.  
  466.       10445  =  Fileblock pointer or descriptor corrupted.
  467.  
  468.       10450  =  BTree routines have already been initialized.
  469.  
  470.       10455  =  Must initialize the BTree routines first.
  471.  
  472.       10460  =  Reorganization aborted.
  473.  
  474.  
  475. Error Log File
  476. --------------
  477.  
  478. The UTIs will record error messages to the file UTI.LOG in the
  479. current directory.  Other events will also be logged, including:
  480.  
  481.      1.   Messages split into two or more parts.
  482.      2.   Messages skipped due to errors.
  483.      3.   *.IMP text files exported as part of a message.
  484.      4.   New, non-exported messages detected during an import.
  485.      5.   End-of-file marks detected in the middle of an import
  486.           packet.  This is only for informational purposes; EOF
  487.           marks have no effect on the enhanced UTIs.
  488.  
  489.  
  490. Program Descriptions
  491. --------------------
  492. The input and output files are standard text files and follow the
  493. UTI v2.1 specifications.  The UTI format is designed and controlled
  494. by Kip Compton; requests for additional UTI format information
  495. should be addressed to him.
  496.  
  497.  
  498. UTIEXPRT
  499.  
  500. Exports messages from the specified conference starting with the
  501. message number in parameter #2.  At this time, WildCat does not
  502. have a no-echo option, so all messages will be exported.
  503.  
  504. The exception is when the /NETWORK parameter is specified.  When in
  505. Network mode, messages that were imported from the same network ID
  506. will not be exported.  The UTINET environment variable can be used
  507. to change network Ids, or the default ID "0" will be used.
  508.  
  509. Network mode also enables the multi-node features.  UTIEXPRT keeps
  510. track of its own high message numbers in the UTINETx.DAT file,
  511. where "x" is the UTINET environment variable.  These separate high
  512. message numbers ensure that all appropriate messages will be
  513. exported to the network.
  514.  
  515.      Parameter 1 -  Conference number.
  516.      Parameter 2 -  First message number to export.
  517.      Parameter 3 -  Full path and file name of the output file.
  518.      Parameter 4 -  /NETWORK (optional)
  519.  
  520.  
  521. UTIIMPRT
  522.  
  523. Imports new messages from the input file into the specified
  524. conference.  In Network mode, it internally marks each message with
  525. a network code which will prevent the message from being exported
  526. to the same network.
  527.  
  528. PC Relay pre-assigns each message a number before calling the
  529. UTIIMPRT program.  Unless PC Relay is told otherwise, it assumes
  530. that these message numbers will stay the same when imported into
  531. the message conference.  If the first message number in the input
  532. file is different than the message number used on the BBS, then the
  533. difference is written to the adjustment file (parameter 3).
  534.  
  535. PC Relay uses the adjustment file to keep its reference numbers
  536. accurate, however the numbers may not be accurate when:
  537.  
  538.      1.   New messages are added to the BBS while an import is in
  539.           progress.
  540.      2.   Invalid or corrupted messages are skipped.
  541.      3.   Long messages are split into two or more parts.
  542.  
  543.  
  544. The UTIs can tell PC Relay to adjust all the reference numbers in
  545. an import, but there is no way to change just a few of them.
  546. WildCat limits messages to a maximum of 12000 bytes.  The internal
  547. WC editors are more restrictive:  When used to create a message,
  548. the limit is 150 lines of 72 characters each, however, the editors
  549. will allow you to safely edit an existing message of up to 164
  550. lines of 72 characters each.  This allows full sized messages (150
  551. lines from the source BBS) to be imported even after many taglines
  552. have been added. 
  553.  
  554.      Parameter 1 -  Conference number.
  555.      Parameter 2 -  Full path and file name of the input file.
  556.      Parameter 3 -  Full path and file name of the message number
  557.                     adjustment file.  (Optional)
  558.      Parameter 3 -  /NETWORK  (Optional)
  559.           or   4
  560.  
  561.  
  562. UTIHIGH
  563.  
  564. Reads the conference status record and writes the high message
  565. number to the output file.
  566.  
  567.      Parameter 1 -  Conference number.
  568.      Parameter 2 -  Full path and file name of the output file.
  569.  
  570.  
  571. UTILIST
  572.  
  573. Creates a list of available conferences with their descriptions. 
  574. This list is used in the PC Relay CONFIG program and in the
  575. MegaMail door.
  576.  
  577.      Parameter 1 -  Full path and file name of the output file.
  578.  
  579.  
  580. UTIVER
  581.  
  582. Writes the UTI version number to the output file.  A second line
  583. identifies the UTI author and/or program name.
  584.  
  585.      Parameter 1 -  Full path and file name of the output file.
  586.  
  587.  
  588. UTILSTRD  (MegaMail only)
  589.  
  590. Depending on the first parameter, this program will either READ the
  591. specified user's last read message numbers or WRITE (update) the
  592. last read message numbers.  Output from this program will be
  593. matched against output from UTILIST to determine which conferences
  594. the user may access and his/her last read pointer.
  595.  
  596.      Parameter 1 -  READ or WRITE
  597.      Parameter 2 -  Full path and file name of the input or output
  598.                     file.
  599.      Parameter 3 -  The user's first, middle, last name, etc.
  600.  
  601. UTIDOOR   (MegaMail only)
  602.  
  603. Creates a small door information file for use by the MegaMail door. 
  604. This program reads the DOOR.SYS file and creates the output file,
  605. which should be UTIDOOR.TXT.
  606.  
  607.      Parameter 1 -  Full path and file name of the output file.
  608.  
  609.  
  610. UTIRFLAG  (MegaMail only)
  611.  
  612. Clears a user's mail-waiting flag for a specified range of
  613. messages.  After a user downloads messages using the MegaMail door,
  614. this program is called to clear the mail-waiting flags.
  615.  
  616.      Parameter 1 -  Conference number.
  617.      Parameter 2 -  Starting message number.
  618.      Parameter 3 -  Ending message number.
  619.      Parameter 4 -  The user's first, middle, last name, etc.
  620.  
  621.  
  622. UTIRESET
  623.  
  624. This program is unique to the Enhanced UTIs; it resets the high
  625. message numbers in the UTINETx.DAT file.  This should be run when
  626. the message conferences are renumbered and whenever the PC Relay
  627. "RESET" program is run.
  628.  
  629.  
  630. Registration
  631. ------------
  632.  
  633. The Enhanced WC3 UTI programs are distributed as shareware. 
  634. Shareware software allows you to try before you buy, thus you never
  635. need to pay for a shareware program that does not meet your needs.
  636.  
  637. You may use these UTIs for 30 days at no charge, allowing you a
  638. chance to see if they meet your needs.  If you keep using them
  639. after 30 days, you must register the software by sending in the
  640. registration form and paying the registration fee of $20 (US). 
  641. Registered DupMsg users are entitled to a $5 discount.
  642.  
  643. Registration entitles the purchaser to use the UTIs on one BBS
  644. system.  A BBS system is defined as either a single computer
  645. system, or a network system where multiple computers are connected
  646. by direct cable to the same network server.
  647.  
  648. Even after you register these UTIs, your satisfaction is
  649. guaranteed.  If within 30 days after registering you decide that
  650. you no longer wish to use the programs, simply write a letter to
  651. the author requesting a refund and your registration fee will be
  652. refunded.  Only the registration fee will be refunded, not the cost
  653. of diskettes that may have been ordered.
  654.  
  655. Support
  656. -------
  657.  
  658. The author can be reached via the WildNet, FidoNet and MSInet mail
  659. networks.  Please address messages to Jim Metzler.
  660.  
  661. Registration fees and requests for additional information should be
  662. addressed to:
  663.  
  664.      Jim Metzler
  665.      WPI Box 188
  666.      100 Institute Road
  667.      Worcester, MA 01609
  668.  
  669.      Voice: (508) 799-7540
  670.      BBS:   (508) 754-6512
  671.  
  672.  
  673. Distribution 
  674. ------------
  675. Several WildNet Sysops have agreed to post DupMsg, the Enhanced
  676. UTIs and Censor in their original ARJ archive with Security
  677. Envelope.  Thanks go to these Sysops and the many others who
  678. have supported these programs.
  679.  
  680.  
  681. The original archive may be downloaded from the following BBSs:
  682.  
  683. Miwok Village        --  Worcester, MA         --  (508) 754-6512
  684. MSI HQ BBS           --  Bakersfield, CA       --  (805) 395-0250
  685.  
  686. B-Line BBS           --  Bakersfield, CA       --  (805) 634-0701
  687. Bun's BBS            --  San Francisco, CA     --  (415) 756-5098
  688. Lost BBS             --  Overland Park, KS     --  (913) 642-0349
  689. NoHo BBS             --  Hesperia, CA          --  (619) 949-4025
  690.  
  691. Data Base Forum      --  Oslo, Norway          --  +47-2-295626
  692. Gil's PC             --  Chapeau, Quebec       --  (819) 689-5465
  693.  
  694.  
  695. DupMsg, Censor and the Enhanced UTIs can be F'Reqed from:
  696.  
  697.      Lost BBS           --  Compucom, V.32     --  (1:280/319)
  698.      B-Line BBS         --  HST Dual Std.      --  (1:210/46)
  699.  
  700. The request names are 'DUPMSG', 'CENSOR' and 'UTI'.
  701.  
  702.  
  703. You are authorized to distribute the Enhanced UTIs provided the
  704. executable programs, documentation, and registration form are
  705. included in their original, unmodified state.  No fee may be
  706. charged for the distribution of DupMsg without the express
  707. written permission of the author.
  708.  
  709.  
  710. Warranty Disclosure
  711. -------------------
  712.  
  713. Normally, software distributed through bulletin boards systems or
  714. shared from one user to another does not carry a warranty, mainly
  715. because the author does not have control over the product and the
  716. program can be modified either intentionally or accidentally
  717. without the author's knowledge.
  718.  
  719. Recognizing this, these UTI programs carry either no warranty or a
  720. limited warranty depending on the distribution method.
  721.  
  722. LIMITED WARRANTY:
  723.  
  724.      This applies only when the program is received directly from
  725.      the author on diskette, or when it is received in the original
  726.      ARJ archive, complete with a valid Security Envelope.  The ARJ
  727.      Security Envelope must read "ARJ archive created by James W.
  728.      Metzler R#0301".  The user must keep the diskette or original
  729.      ARJ archive as proof of this warranty.
  730.  
  731.    - What is covered:  The UTIs program will perform substantially
  732.      as described in this document.  In addition, while the program
  733.      may contain minor bugs or errors, it is warranted to be free
  734.      of major defects for a period of six months.  Diskettes
  735.      received from the author are guaranteed to be free or defects
  736.      for a period of six months from date of receipt.
  737.  
  738.    - What is not covered:  The author will not be liable for
  739.      incidental and/or consequential damages, including injury to
  740.      property, interruption of service, loss of business and/or
  741.      anticipated profits, or other consequential damages that may
  742.      result from use, malfunction or failure of the programs, or
  743.      from errors or omissions in the documentation.  Some states do
  744.      not allow the exclusion or limitation of incidental or
  745.      consequential damages, so the above limitation may not apply
  746.      to you.
  747.  
  748.      Any attempt to modify the UTI programs will void this warranty
  749.      in its entirety.
  750.  
  751.    - If there is a problem:  Within 60 days of notification that a
  752.      major defect exists, the author, at his discretion, will
  753.      either fix the program and forward the replacement at no cost
  754.      to the registered user, or will refund the registration fee.
  755.  
  756.      Defective diskettes will be replaced within 60 days at no cost
  757.      to the purchaser.
  758.  
  759.    - How to get service:  Send a written letter to the author
  760.      detailing the type of problem and symptoms experienced. 
  761.      Include your name, address, voice phone number and
  762.      registration number and any additional information that you
  763.      believe may be useful, such as any TSRs and disk cache
  764.      programs in use.
  765.  
  766.      The author may contact you by voice or written letter for more
  767.      information to help in tracking down the problem.
  768.  
  769. NO WARRANTY:
  770.  
  771.      If you did not receive the UTI programs directly from the
  772.      author, or in its original ARJ archive with a genuine Security
  773.      Envelope (see above), then there is a possibility that the
  774.      programs and/or documentation have been modified, or that the
  775.      program is not the author's work.  The author makes no
  776.      warranty of any kind, express or implied, including any
  777.      warranties of fitness and/or merchantability if the program
  778.      was received from other sources.
  779.  
  780.      The author will not be liable for any damages, whether direct,
  781.      indirect, special or consequential arising from a failure of
  782.      this program to operate in the manner desired by the user. 
  783.      The author will not be liable for any damage to data or
  784.      property which may be caused directly or indirectly by use of
  785.      the program.
  786.  
  787. When trying new software, always backup any and all important files
  788. on your system.
  789.  
  790.  
  791. Special Thanks
  792. --------------
  793.  
  794. Special thanks to Peter Anderson, Ralph Maya, Ryan Cramer, Bob
  795. Allman, Bill Anton and Mike Callaghan for their help ßeta testing
  796. these programs.  Their assistance has been invaluable in the
  797. development of these programs.
  798.  
  799.  
  800. Copyright
  801. ---------
  802.  
  803. These UTI programs are:
  804. Copyright (c) 1992, James W. Metzler, All Rights Reserved.
  805.